<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  
  <meta name="renderer" content="webkit">
  <meta http-equiv="X-UA-Compatible" content="IE=edge" >
  <link rel="dns-prefetch" href="https://ZhenshengLee.github.io">
  <title>常用系统维护 | 哈骑士的博客</title>
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <meta name="description" content="前言
纯粹笔记，以防忘记">
<meta property="og:type" content="article">
<meta property="og:title" content="常用系统维护">
<meta property="og:url" content="https://ZhenshengLee.github.io/2017/01/02/160716-常用系统维护/index.html">
<meta property="og:site_name" content="哈骑士的博客">
<meta property="og:description" content="前言
纯粹笔记，以防忘记">
<meta property="og:updated_time" content="2017-01-02T15:41:01.118Z">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="常用系统维护">
<meta name="twitter:description" content="前言
纯粹笔记，以防忘记">
  
    <link rel="alternative" href="/atom.xml" title="哈骑士的博客" type="application/atom+xml">
  
  
    <link rel="icon" href="/favicon.png">
  
  <link rel="stylesheet" type="text/css" href="/main.68ab53.css">
  <style type="text/css">
  
    #container.show {
      background: linear-gradient(200deg,#a0cfe4,#e8c37e);
    }
  </style>
  

  

</head>

<body>
  <div id="container" q-class="show:isCtnShow">
    <canvas id="anm-canvas" class="anm-canvas"></canvas>
    <div class="left-col" q-class="show:isShow">
      
<div class="overlay" style="background: #4d4d4d"></div>
<div class="intrude-less">
	<header id="header" class="inner">
		<a href="/" class="profilepic">
			<img src="http://7xvunf.com1.z0.glb.clouddn.com/%E5%85%B6%E4%BB%96100.jpg" class="js-avatar">
		</a>
		<hgroup>
		  <h1 class="header-author"><a href="/">黎振胜</a></h1>
		</hgroup>
		
		<p class="header-subtitle">将科技固化为产品——机器人软件开发</p>
		

		<nav class="header-menu">
			<ul>
			
				<li><a href="/">主页</a></li>
	        
				<li><a href="/tags/机器人/">机器人</a></li>
	        
				<li><a href="/tags/嵌入式/">嵌入式</a></li>
	        
				<li><a href="/tags/其他/">其他</a></li>
	        
			</ul>
		</nav>
		<nav class="header-smart-menu">
    		
    			
    			<a q-on="click: openSlider(e, 'innerArchive')" href="javascript:void(0)">所有文章</a>
    			
            
    			
            
    			
    			<a q-on="click: openSlider(e, 'aboutme')" href="javascript:void(0)">关于我</a>
    			
            
		</nav>
		<nav class="header-nav">
			<div class="social">
				
					<a class="github" target="_blank" href="https://github.com/ZhenshengLee" title="github"><i class="icon-github"></i></a>
		        
					<a class="mail" target="_blank" href="mailto://lzs_1993@qq.com" title="mail"><i class="icon-mail"></i></a>
		        
					<a class="linkedin" target="_blank" href="https://cn.linkedin.com/in/zhenshengli" title="linkedin"><i class="icon-linkedin"></i></a>
		        
			</div>
		</nav>
	</header>		
</div>

    </div>
    <div class="mid-col" q-class="show:isShow,hide:isShow|isFalse">
      
<nav id="mobile-nav">
  	<div class="overlay js-overlay" style="background: #4d4d4d"></div>
	<div class="btnctn js-mobile-btnctn">
  		<div class="slider-trigger list" q-on="click: openSlider(e)"><i class="icon icon-sort"></i></div>
	</div>
	<div class="intrude-less">
		<header id="header" class="inner">
			<div class="profilepic">
				<img src="http://7xvunf.com1.z0.glb.clouddn.com/%E5%85%B6%E4%BB%96100.jpg" class="js-avatar">
			</div>
			<hgroup>
			  <h1 class="header-author js-header-author">黎振胜</h1>
			</hgroup>
			
			<p class="header-subtitle"><i class="icon icon-quo-left"></i>将科技固化为产品——机器人软件开发<i class="icon icon-quo-right"></i></p>
			
			
			
				
			
				
			
				
			
				
			
			
			
			<nav class="header-nav">
				<div class="social">
					
						<a class="github" target="_blank" href="https://github.com/ZhenshengLee" title="github"><i class="icon-github"></i></a>
			        
						<a class="mail" target="_blank" href="mailto://lzs_1993@qq.com" title="mail"><i class="icon-mail"></i></a>
			        
						<a class="linkedin" target="_blank" href="https://cn.linkedin.com/in/zhenshengli" title="linkedin"><i class="icon-linkedin"></i></a>
			        
				</div>
			</nav>

			<nav class="header-menu js-header-menu">
				<ul style="width: 70%">
				
				
					<li style="width: 25%"><a href="/">主页</a></li>
		        
					<li style="width: 25%"><a href="/tags/机器人/">机器人</a></li>
		        
					<li style="width: 25%"><a href="/tags/嵌入式/">嵌入式</a></li>
		        
					<li style="width: 25%"><a href="/tags/其他/">其他</a></li>
		        
				</ul>
			</nav>
		</header>				
	</div>
	<div class="mobile-mask" style="display:none" q-show="isShow"></div>
</nav>

      <div id="wrapper" class="body-wrap">
        <div class="menu-l">
          <div class="canvas-wrap">
            <canvas data-colors="#eaeaea" data-sectionHeight="100" data-contentId="js-content" id="myCanvas1" class="anm-canvas"></canvas>
          </div>
          <div id="js-content" class="content-ll">
            <article id="post-160716-常用系统维护" class="article article-type-post " itemscope itemprop="blogPost">
  <div class="article-inner">
    
      <header class="article-header">
        
  
    <h1 class="article-title" itemprop="name">
      常用系统维护
    </h1>
  

        
        <a href="/2017/01/02/160716-常用系统维护/" class="archive-article-date">
  	<time datetime="2017-01-02T15:41:01.118Z" itemprop="datePublished"><i class="icon-calendar icon"></i>2017-01-02</time>
</a>
        
      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <h2 id="&#x524D;&#x8A00;"><a href="#&#x524D;&#x8A00;" class="headerlink" title="&#x524D;&#x8A00;"></a>&#x524D;&#x8A00;</h2><ul>
<li>&#x7EAF;&#x7CB9;&#x7B14;&#x8BB0;&#xFF0C;&#x4EE5;&#x9632;&#x5FD8;&#x8BB0;</li>
</ul>
<a id="more"></a>
<h2 id="&#x76EE;&#x5F55;"><a href="#&#x76EE;&#x5F55;" class="headerlink" title="&#x76EE;&#x5F55;"></a>&#x76EE;&#x5F55;</h2><!-- toc -->
<ul>
<li><a href="#&#x8BB0;&#x5F55;">&#x8BB0;&#x5F55;</a><ul>
<li><a href="#&#x5728;live-cd-&#x4E0B;&#x4E3A;&#x67D0;&#x78C1;&#x76D8;&#x5B89;&#x88C5;grub">&#x5728;live cd &#x4E0B;&#x4E3A;&#x67D0;&#x78C1;&#x76D8;&#x5B89;&#x88C5;grub</a></li>
<li><a href="#&#x6302;&#x8F7D;">&#x6302;&#x8F7D;</a></li>
<li><a href="#&#x66F4;&#x6539;&#x4E3B;&#x663E;&#x793A;&#x5668;">&#x66F4;&#x6539;&#x4E3B;&#x663E;&#x793A;&#x5668;</a></li>
<li><a href="#&#x67E5;&#x770B;&#x8BBE;&#x5907;">&#x67E5;&#x770B;&#x8BBE;&#x5907;</a></li>
<li><a href="#grub-&#x56FE;&#x5F62;&#x5316;&#x7F16;&#x8F91;">grub &#x56FE;&#x5F62;&#x5316;&#x7F16;&#x8F91;</a></li>
<li><a href="#&#x67E5;&#x627E;-package">&#x67E5;&#x627E; package</a></li>
<li><a href="#&#x67E5;&#x8BE2;&#x94FE;&#x63A5;&#x5E93;&#x4F9D;&#x8D56;&#x9879;">&#x67E5;&#x8BE2;&#x94FE;&#x63A5;&#x5E93;&#x4F9D;&#x8D56;&#x9879;</a></li>
<li><a href="#&#x5220;&#x9664;&#x6587;&#x4EF6;&#x5939;">&#x5220;&#x9664;&#x6587;&#x4EF6;&#x5939;</a></li>
<li><a href="#&#x67E5;&#x627E;&#x5305;">&#x67E5;&#x627E;&#x5305;</a></li>
<li><a href="#&#x5378;&#x8F7D;&#x5305;">&#x5378;&#x8F7D;&#x5305;</a></li>
<li><a href="#&#x5378;&#x8F7D;&#x8F6F;&#x4EF6;">&#x5378;&#x8F7D;&#x8F6F;&#x4EF6;</a></li>
<li><a href="#grub">grub</a></li>
<li><a href="#&#x4FEE;&#x6539;hosts&#x6587;&#x4EF6;">&#x4FEE;&#x6539;hosts&#x6587;&#x4EF6;</a></li>
<li><a href="#choose-server">Choose server</a></li>
<li><a href="#su-&#x547D;&#x4EE4;&#x5931;&#x8D25;">su &#x547D;&#x4EE4;&#x5931;&#x8D25;</a></li>
<li><a href="#&#x73AF;&#x5883;&#x53D8;&#x91CF;">&#x73AF;&#x5883;&#x53D8;&#x91CF;</a></li>
<li><a href="#&#x66F4;&#x65B0;">&#x66F4;&#x65B0;</a></li>
<li><a href="#&#x5B89;&#x88C5;">&#x5B89;&#x88C5;</a></li>
<li><a href="#&#x66F4;&#x6539;&#x8BA1;&#x7B97;&#x673A;&#x540D;">&#x66F4;&#x6539;&#x8BA1;&#x7B97;&#x673A;&#x540D;</a></li>
<li><a href="#&#x7F51;&#x7EDC;&#x8FDC;&#x7A0B;&#x767B;&#x9646;&#x5DE5;&#x5177;">&#x7F51;&#x7EDC;&#x8FDC;&#x7A0B;&#x767B;&#x9646;&#x5DE5;&#x5177;</a></li>
<li><a href="#&#x67E5;&#x770B;&#x7F51;&#x901F;">&#x67E5;&#x770B;&#x7F51;&#x901F;</a></li>
<li><a href="#&#x542F;&#x52A8;&#x5668;&#x4E0A;&#x5E94;&#x7528;&#x7A0B;&#x5E8F;&#x56FE;&#x6807;&#x4E3A;&#x7070;&#x8272;&#x95EE;&#x53F7;">&#x542F;&#x52A8;&#x5668;&#x4E0A;&#x5E94;&#x7528;&#x7A0B;&#x5E8F;&#x56FE;&#x6807;&#x4E3A;&#x7070;&#x8272;&#x95EE;&#x53F7;&#xFF1F;</a></li>
<li><a href="#&#x5904;&#x7406;&#x5305;&#x51B2;&#x7A81;&#x95EE;&#x9898;&#x6280;&#x5DE7;">&#x5904;&#x7406;&#x5305;&#x51B2;&#x7A81;&#x95EE;&#x9898;&#x6280;&#x5DE7;</a></li>
<li><a href="#getting-help">Getting help</a></li>
<li><a href="#umet-dependencies&#x8F6F;&#x4EF6;&#x5B89;&#x88C5;&#x5305;&#x51B2;&#x7A81;&#x65F6;&#x7684;&#x89E3;&#x51B3;&#x601D;&#x8DEF;">Umet dependencies&#x2014;&#x2014;&#x8F6F;&#x4EF6;&#x5B89;&#x88C5;&#x5305;&#x51B2;&#x7A81;&#x65F6;&#x7684;&#x89E3;&#x51B3;&#x601D;&#x8DEF;</a></li>
<li><a href="#&#x5173;&#x4E8E;ppaspersonal-package-archive">&#x5173;&#x4E8E;PPAs(Personal Package Archive)</a><ul>
<li><a href="#disable">Disable</a></li>
<li><a href="#purge">Purge</a></li>
<li><a href="#remove">Remove:</a></li>
<li><a href="#preventive-measures">Preventive Measures</a></li>
</ul>
</li>
<li><a href="#&#x53CC;&#x786C;&#x76D8;&#x540C;&#x5F15;&#x5BFC;&#x53CC;&#x7CFB;&#x7EDF;">&#x53CC;&#x786C;&#x76D8;&#x540C;&#x5F15;&#x5BFC;&#x53CC;&#x7CFB;&#x7EDF;</a></li>
<li><a href="#&#x91CD;&#x65B0;&#x5206;&#x533A;&#x7684;&#x95EE;&#x9898;">&#x91CD;&#x65B0;&#x5206;&#x533A;&#x7684;&#x95EE;&#x9898;</a></li>
<li><a href="#&#x88C5;&#x7CFB;&#x7EDF;&#x5B9E;&#x8DF5;">&#x88C5;&#x7CFB;&#x7EDF;&#x5B9E;&#x8DF5;</a></li>
<li><a href="#&#x7F3A;&#x5C11;&#x5E93;&#x6587;&#x4EF6;">&#x7F3A;&#x5C11;&#x5E93;&#x6587;&#x4EF6;</a></li>
</ul>
</li>
</ul>
<!-- tocstop -->
<h2 id="&#x8BB0;&#x5F55;"><a href="#&#x8BB0;&#x5F55;" class="headerlink" title="&#x8BB0;&#x5F55;"></a>&#x8BB0;&#x5F55;</h2><h3 id="&#x5728;live-cd-&#x4E0B;&#x4E3A;&#x67D0;&#x78C1;&#x76D8;&#x5B89;&#x88C5;grub"><a href="#&#x5728;live-cd-&#x4E0B;&#x4E3A;&#x67D0;&#x78C1;&#x76D8;&#x5B89;&#x88C5;grub" class="headerlink" title="&#x5728;live cd &#x4E0B;&#x4E3A;&#x67D0;&#x78C1;&#x76D8;&#x5B89;&#x88C5;grub"></a>&#x5728;live cd &#x4E0B;&#x4E3A;&#x67D0;&#x78C1;&#x76D8;&#x5B89;&#x88C5;grub</h3><ul>
<li>&#x4ECE;live cd &#x8FDB;&#x5165;ubuntu</li>
</ul>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">sudo su</span><br><span class="line">fdisk -l</span><br><span class="line">mount /dev/sdc1</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x8FD9;&#x662F;&#x67D0;&#x78C1;&#x76D8;ubuntu &#x542F;&#x52A8;&#x5206;&#x533A;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">grub-install --root-directory=/mnt /dev/sdc</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x91CD;&#x542F;&#x7535;&#x8111;&#x8FDB;&#x5165;&#x8BE5;&#x78C1;&#x76D8;&#xFF0C;&#x4F1A;&#x62A5;&#x9519;&#xFF0C;&#x4F46;&#x53EF;&#x4EE5;&#x6B63;&#x5E38;&#x8FDB;&#x5165;ubuntu&#xFF0C;&#x7136;&#x540E;&#x5728;&#x8BE5;&#x7CFB;&#x7EDF;&#x4E2D;&#x66F4;&#x65B0;&#x5373;&#x53EF;&#xFF01;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo update-grub</span><br></pre></td></tr></table></figure>
<h3 id="&#x6302;&#x8F7D;"><a href="#&#x6302;&#x8F7D;" class="headerlink" title="&#x6302;&#x8F7D;"></a>&#x6302;&#x8F7D;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo mount -o loop -t hfsplus imagefile.img /mnt</span><br></pre></td></tr></table></figure>
<h3 id="&#x66F4;&#x6539;&#x4E3B;&#x663E;&#x793A;&#x5668;"><a href="#&#x66F4;&#x6539;&#x4E3B;&#x663E;&#x793A;&#x5668;" class="headerlink" title="&#x66F4;&#x6539;&#x4E3B;&#x663E;&#x793A;&#x5668;"></a>&#x66F4;&#x6539;&#x4E3B;&#x663E;&#x793A;&#x5668;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">xrandr</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x67E5;&#x770B;&#x663E;&#x793A;&#x5668;&#x8BE6;&#x7EC6;&#x4FE1;&#x606F;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">xrandr --output DFP5 --auto --primary</span><br></pre></td></tr></table></figure>
<h3 id="&#x67E5;&#x770B;&#x8BBE;&#x5907;"><a href="#&#x67E5;&#x770B;&#x8BBE;&#x5907;" class="headerlink" title="&#x67E5;&#x770B;&#x8BBE;&#x5907;"></a>&#x67E5;&#x770B;&#x8BBE;&#x5907;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">ls /dev/ | grep video</span><br></pre></td></tr></table></figure>
<h3 id="grub-&#x56FE;&#x5F62;&#x5316;&#x7F16;&#x8F91;"><a href="#grub-&#x56FE;&#x5F62;&#x5316;&#x7F16;&#x8F91;" class="headerlink" title="grub &#x56FE;&#x5F62;&#x5316;&#x7F16;&#x8F91;"></a>grub &#x56FE;&#x5F62;&#x5316;&#x7F16;&#x8F91;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">sudo add-apt-repository ppa:danielrichter2007/grub-customizer</span><br><span class="line">sudo apt-get update</span><br><span class="line">sudo apt-get install grub-customizer</span><br></pre></td></tr></table></figure>
<h3 id="&#x67E5;&#x627E;-package"><a href="#&#x67E5;&#x627E;-package" class="headerlink" title="&#x67E5;&#x627E; package"></a>&#x67E5;&#x627E; package</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">dpkg -l | grep xmind</span><br></pre></td></tr></table></figure>
<h3 id="&#x67E5;&#x8BE2;&#x94FE;&#x63A5;&#x5E93;&#x4F9D;&#x8D56;&#x9879;"><a href="#&#x67E5;&#x8BE2;&#x94FE;&#x63A5;&#x5E93;&#x4F9D;&#x8D56;&#x9879;" class="headerlink" title="&#x67E5;&#x8BE2;&#x94FE;&#x63A5;&#x5E93;&#x4F9D;&#x8D56;&#x9879;"></a>&#x67E5;&#x8BE2;&#x94FE;&#x63A5;&#x5E93;&#x4F9D;&#x8D56;&#x9879;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">.../platforms$ ldd libqxcb.so</span><br></pre></td></tr></table></figure>
<h3 id="&#x5220;&#x9664;&#x6587;&#x4EF6;&#x5939;"><a href="#&#x5220;&#x9664;&#x6587;&#x4EF6;&#x5939;" class="headerlink" title="&#x5220;&#x9664;&#x6587;&#x4EF6;&#x5939;"></a>&#x5220;&#x9664;&#x6587;&#x4EF6;&#x5939;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo rm -rf ./Robai/</span><br></pre></td></tr></table></figure>
<h3 id="&#x67E5;&#x627E;&#x5305;"><a href="#&#x67E5;&#x627E;&#x5305;" class="headerlink" title="&#x67E5;&#x627E;&#x5305;"></a>&#x67E5;&#x627E;&#x5305;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">apt-cache search pcl</span><br></pre></td></tr></table></figure>
<h3 id="&#x5378;&#x8F7D;&#x5305;"><a href="#&#x5378;&#x8F7D;&#x5305;" class="headerlink" title="&#x5378;&#x8F7D;&#x5305;"></a>&#x5378;&#x8F7D;&#x5305;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo dpkg -r pcl</span><br></pre></td></tr></table></figure>
<h3 id="&#x5378;&#x8F7D;&#x8F6F;&#x4EF6;"><a href="#&#x5378;&#x8F7D;&#x8F6F;&#x4EF6;" class="headerlink" title="&#x5378;&#x8F7D;&#x8F6F;&#x4EF6;"></a>&#x5378;&#x8F7D;&#x8F6F;&#x4EF6;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get remove ros-indigo-moveit-full</span><br></pre></td></tr></table></figure>
<h3 id="grub"><a href="#grub" class="headerlink" title="grub"></a>grub</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">sudo cp /etc/default/grub /etc/default/grub.bak</span><br><span class="line">sudo gedit /etc/default/grub</span><br></pre></td></tr></table></figure>
<blockquote>
<p>GRUB_DEFAULT=<br>GRUB_TIMEOUT=5</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo update-grub</span><br></pre></td></tr></table></figure>
<h3 id="&#x4FEE;&#x6539;hosts&#x6587;&#x4EF6;"><a href="#&#x4FEE;&#x6539;hosts&#x6587;&#x4EF6;" class="headerlink" title="&#x4FEE;&#x6539;hosts&#x6587;&#x4EF6;"></a>&#x4FEE;&#x6539;hosts&#x6587;&#x4EF6;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">sudo gedit /etc/hosts</span><br><span class="line">sudo rcnscd restart</span><br><span class="line">sudo apt-get install nscd</span><br><span class="line">sudo /etc/init.d/nscd restart</span><br></pre></td></tr></table></figure>
<blockquote>
<p>127.0.1.1 zsUbuntu</p>
</blockquote>
<h3 id="choose-server"><a href="#Choose-server" class="headerlink" title="Choose server"></a>Choose server</h3><ul>
<li>Choose the ubuntu server sjtu.edu.cn</li>
</ul>
<h3 id="su-&#x547D;&#x4EE4;&#x5931;&#x8D25;"><a href="#su-&#x547D;&#x4EE4;&#x5931;&#x8D25;" class="headerlink" title="su &#x547D;&#x4EE4;&#x5931;&#x8D25;"></a>su &#x547D;&#x4EE4;&#x5931;&#x8D25;</h3><ul>
<li>&#x8BD5;&#x8BD5;sudo su&#x8FDB;&#x5165;root&#x6A21;&#x5F0F;</li>
</ul>
<h3 id="&#x73AF;&#x5883;&#x53D8;&#x91CF;"><a href="#&#x73AF;&#x5883;&#x53D8;&#x91CF;" class="headerlink" title="&#x73AF;&#x5883;&#x53D8;&#x91CF;"></a>&#x73AF;&#x5883;&#x53D8;&#x91CF;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">env</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x67E5;&#x770B;&#x73AF;&#x5883;&#x53D8;&#x91CF;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">set</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x67E5;&#x770B;&#x6240;&#x6709;&#x53D8;&#x91CF;&#xFF08;&#x73AF;&#x5883;&#x53D8;&#x91CF;+&#x81EA;&#x5B9A;&#x4E49;&#x53D8;&#x91CF;&#xFF09;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">echo ${PATH}</span><br><span class="line">PATH=&quot;$PATH&quot;:&apos;/home/zs/VSCode-linux-x64&apos;</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x6DFB;&#x52A0;&#x8DEF;&#x5F84;&#x81F3;PATH&#x73AF;&#x5883;&#x53D8;&#x91CF;<br>&#x8DEF;&#x5F84;&#x53EF;&#x4EE5;&#x4E0D;&#x52A0;&#x5355;&#x5F15;&#x53F7;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">echo $$</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x5F53;&#x524D;&#x7EBF;&#x7A0B;&#x7684;PID&#x53F7;&#x7801;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">echo $?</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x4E0A;&#x4E2A;&#x547D;&#x4EE4;&#x7684;&#x56DE;&#x4F20;&#x7801;&#xFF08;&#x6CA1;&#x9519;&#x4E3A;0&#xFF09;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">export</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x81EA;&#x5B9A;&#x4E49;&#x53D8;&#x91CF;&#x8F6C;&#x6210;&#x73AF;&#x5883;&#x53D8;&#x91CF;&#xFF0C;&#x5B50;&#x8FDB;&#x7A0B;&#x4EC5;&#x4F1A;&#x7EE7;&#x627F;&#x7236;&#x8FDB;&#x7A0B;&#x7684;&#x7684;&#x73AF;&#x5883;&#x53D8;&#x91CF;&#xFF0C;&#x800C;&#x4E0D;&#x4F1A;&#x7EE7;&#x627F;&#x81EA;&#x5B9A;&#x4E49;&#x53D8;&#x91CF;<br>declare&#x53CD;&#x8FC7;&#x6765;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">export PYTHONPATH=~/Documents/zsProjects/zsNao/zsROSNaoqi/pynaoqi-python2.7-2.1.4.13-linux64:$PYTHONPATH</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x6DFB;&#x52A0;&#x73AF;&#x5883;&#x53D8;&#x91CF;</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">echo &apos;export PYTHONPATH=~/Documents/zsProjects/zsNao/zsROSNaoqi/pynaoqi-python2.7-2.1.4.13-linux64:$PYTHONPATH&apos; &gt;&gt; ~/.bashrc</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x6C38;&#x4E45;&#x6DFB;&#x52A0;&#x73AF;&#x5883;&#x53D8;&#x91CF;</p>
</blockquote>
<h3 id="&#x66F4;&#x65B0;"><a href="#&#x66F4;&#x65B0;" class="headerlink" title="&#x66F4;&#x65B0;"></a>&#x66F4;&#x65B0;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get update</span><br><span class="line">sudo apt-get dist-upgrade</span><br><span class="line">sudo apt-get autoremove</span><br><span class="line">sudo apt-get autoclean</span><br></pre></td></tr></table></figure>
<h3 id="&#x5B89;&#x88C5;"><a href="#&#x5B89;&#x88C5;" class="headerlink" title="&#x5B89;&#x88C5;"></a>&#x5B89;&#x88C5;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo aptitude install name</span><br></pre></td></tr></table></figure>
<h3 id="&#x66F4;&#x6539;&#x8BA1;&#x7B97;&#x673A;&#x540D;"><a href="#&#x66F4;&#x6539;&#x8BA1;&#x7B97;&#x673A;&#x540D;" class="headerlink" title="&#x66F4;&#x6539;&#x8BA1;&#x7B97;&#x673A;&#x540D;"></a>&#x66F4;&#x6539;&#x8BA1;&#x7B97;&#x673A;&#x540D;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">sudo gedit /etc/hostname</span><br><span class="line">sudo gedit /etc/hosts</span><br></pre></td></tr></table></figure>
<blockquote>
<p>&#x4E24;&#x4E2A;&#x5730;&#x65B9;&#x7684;&#x540D;&#x5B57;&#x9700;&#x4E00;&#x81F4;</p>
</blockquote>
<h3 id="&#x7F51;&#x7EDC;&#x8FDC;&#x7A0B;&#x767B;&#x9646;&#x5DE5;&#x5177;"><a href="#&#x7F51;&#x7EDC;&#x8FDC;&#x7A0B;&#x767B;&#x9646;&#x5DE5;&#x5177;" class="headerlink" title="&#x7F51;&#x7EDC;&#x8FDC;&#x7A0B;&#x767B;&#x9646;&#x5DE5;&#x5177;"></a>&#x7F51;&#x7EDC;&#x8FDC;&#x7A0B;&#x767B;&#x9646;&#x5DE5;&#x5177;</h3><blockquote>
<p>ssh</p>
</blockquote>
<h3 id="&#x67E5;&#x770B;&#x7F51;&#x901F;"><a href="#&#x67E5;&#x770B;&#x7F51;&#x901F;" class="headerlink" title="&#x67E5;&#x770B;&#x7F51;&#x901F;"></a>&#x67E5;&#x770B;&#x7F51;&#x901F;</h3><blockquote>
<p>nload</p>
</blockquote>
<h3 id="&#x542F;&#x52A8;&#x5668;&#x4E0A;&#x5E94;&#x7528;&#x7A0B;&#x5E8F;&#x56FE;&#x6807;&#x4E3A;&#x7070;&#x8272;&#x95EE;&#x53F7;"><a href="#&#x542F;&#x52A8;&#x5668;&#x4E0A;&#x5E94;&#x7528;&#x7A0B;&#x5E8F;&#x56FE;&#x6807;&#x4E3A;&#x7070;&#x8272;&#x95EE;&#x53F7;&#xFF1F;" class="headerlink" title="&#x542F;&#x52A8;&#x5668;&#x4E0A;&#x5E94;&#x7528;&#x7A0B;&#x5E8F;&#x56FE;&#x6807;&#x4E3A;&#x7070;&#x8272;&#x95EE;&#x53F7;&#xFF1F;"></a>&#x542F;&#x52A8;&#x5668;&#x4E0A;&#x5E94;&#x7528;&#x7A0B;&#x5E8F;&#x56FE;&#x6807;&#x4E3A;&#x7070;&#x8272;&#x95EE;&#x53F7;&#xFF1F;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">cd &#xFF5E;/.local/share/applications/</span><br><span class="line">gedit ${&#x67D0;&#x4E00;&#x4E2A;&#x684C;&#x9762;&#x5FEB;&#x6377;&#x65B9;&#x5F0F;&#x6587;&#x4EF6;}</span><br><span class="line">${ICON}&#x53D8;&#x91CF;&#x8FDB;&#x884C;&#x8BBE;&#x7F6E;</span><br></pre></td></tr></table></figure>
<h3 id="&#x5904;&#x7406;&#x5305;&#x51B2;&#x7A81;&#x95EE;&#x9898;&#x6280;&#x5DE7;"><a href="#&#x5904;&#x7406;&#x5305;&#x51B2;&#x7A81;&#x95EE;&#x9898;&#x6280;&#x5DE7;" class="headerlink" title="&#x5904;&#x7406;&#x5305;&#x51B2;&#x7A81;&#x95EE;&#x9898;&#x6280;&#x5DE7;"></a>&#x5904;&#x7406;&#x5305;&#x51B2;&#x7A81;&#x95EE;&#x9898;&#x6280;&#x5DE7;</h3><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">aptitude</span><br></pre></td></tr></table></figure>
<h3 id="getting-help"><a href="#Getting-help" class="headerlink" title="Getting help"></a>Getting help</h3><ul>
<li>When asking for help on Askubuntu or any other help forum, you should include the output of the following commands in your question:</li>
</ul>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get install package-name</span><br></pre></td></tr></table></figure>
<blockquote>
<p>Output of actual error.</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">cat /etc/apt/sources.list</span><br></pre></td></tr></table></figure>
<blockquote>
<p>This will show your sources.list</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">cat /etc/apt/sources.list.d/*</span><br></pre></td></tr></table></figure>
<blockquote>
<p>This will show the list of PPAs (If any).</p>
</blockquote>
<h3 id="umet-dependencies&#x8F6F;&#x4EF6;&#x5B89;&#x88C5;&#x5305;&#x51B2;&#x7A81;&#x65F6;&#x7684;&#x89E3;&#x51B3;&#x601D;&#x8DEF;"><a href="#Umet-dependencies&#x2014;&#x2014;&#x8F6F;&#x4EF6;&#x5B89;&#x88C5;&#x5305;&#x51B2;&#x7A81;&#x65F6;&#x7684;&#x89E3;&#x51B3;&#x601D;&#x8DEF;" class="headerlink" title="Umet dependencies&#x2014;&#x2014;&#x8F6F;&#x4EF6;&#x5B89;&#x88C5;&#x5305;&#x51B2;&#x7A81;&#x65F6;&#x7684;&#x89E3;&#x51B3;&#x601D;&#x8DEF;"></a>Umet dependencies&#x2014;&#x2014;&#x8F6F;&#x4EF6;&#x5B89;&#x88C5;&#x5305;&#x51B2;&#x7A81;&#x65F6;&#x7684;&#x89E3;&#x51B3;&#x601D;&#x8DEF;</h3><ul>
<li>&#x5907;&#x4EFD;APT&#x6E90;&#x6570;&#x636E;&#x6587;&#x4EF6;</li>
</ul>
<blockquote>
<p>APT is a package management system for Debian and other Linux distributions based on it, such as Ubuntu. For the most part, APT is easy to use for installing, removing, and updating packages. In rare instances, often when you are mixing in third-party dependencies, there is a chance that apt-get may end up giving you an error telling you that a package installation could not be completed.<br>It is always a good idea to back up configuration files like /etc/apt/sources.list, so you can revert the changes if needed.</p>
</blockquote>
<ul>
<li>&#x7248;&#x672C;&#x53F7;&#x4E0D;&#x4E00;&#x81F4;&#xFF0C;&#x6709;&#x4E00;&#x4E2A;&#x7248;&#x672C;&#x5DF2;&#x7ECF;&#x5B89;&#x88C5;&#xFF0C;&#x4F46;&#x662F;&#x4F60;&#x8981;&#x5B89;&#x88C5;&#x53E6;&#x4E00;&#x4E2A;&#x7248;&#x672C;</li>
</ul>
<blockquote>
<p>If the error shows something like this:</p>
</blockquote>
<p><some-package>: Depends: <other-package> (= version) but this-version is to be installed</other-package></some-package></p>
<p>Then make sure that the restricted and universe repositories are enabled. Hit Alt+F2, type software-properties-gtk and hit Enter.</p>
<blockquote>
<p>Under Ubuntu Software tab, enable all the repositories.</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get clean</span><br><span class="line">sudo apt-get autoclean</span><br></pre></td></tr></table></figure>
<blockquote>
<p>One possible cause of unmet dependencies could be corrupted package database, and/or some packages weren&#x2019;t installed properly. To fix this problem, hit Alt+Ctrl+T to open terminal and try to run one of the following commands:<br>apt-get clean clears out the local repository of retrieved package files (the .deb files). It removes everything but the lock file from /var/cache/apt/archives/ and /var/cache/apt/archives/partial/. apt-get autoclean clears out the local repository of retrieved package files, but unlike apt-get clean, it only removes package files that can no longer be downloaded, and are largely useless.</p>
</blockquote>
<ul>
<li>autoclean&#x57FA;&#x672C;&#x6CA1;&#x4EC0;&#x4E48;&#x7528;&#xFF0C;clean&#x6709;&#x7528;&#x4E00;&#x4E9B;</li>
</ul>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get -f install</span><br></pre></td></tr></table></figure>
<blockquote>
<p>One of the most basic fixes to resolve dependencies problems is to run:<br>The -f here stands for &#x201C;fix broken&#x201D;. Apt will attempt to correct broken dependencies. If you manually installed a package that had unmet dependencies, apt-get will install those dependencies, if possible, otherwise it may simply remove the package that you installed in order to resolve the problem.<br>Then run:</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo dpkg --configure -a</span><br></pre></td></tr></table></figure>
<blockquote>
<p>Then run this again:</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get -f install</span><br></pre></td></tr></table></figure>
<blockquote>
<p>If the output is:<br>0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.<br>That means it failed.</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get -u dist-upgrade</span><br></pre></td></tr></table></figure>
<blockquote>
<p>Next solution is to run:</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get -o Debug::pkgProblemResolver=yes dist-upgrade</span><br></pre></td></tr></table></figure>
<blockquote>
<p>If it shows any held packages, it is best to eliminate them. Packages are held because of dependency conflicts that apt cannot resolve. Try this command to find and repair the conflicts:<br>If it cannot fix the conflicts, it will exit with:<br>0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get remove --dry-run package-name</span><br></pre></td></tr></table></figure>
<blockquote>
<p>Delete the held packages one by one, running dist-upgrade each time, until there are no more held packages. Then reinstall any needed packages. Be sure to use the &#x2013;dry-runoption, so that you are fully informed of consequences:<br>Since removing the package you are trying to install may not be ideal, you might also try finding a repository that has the packages you need to satisfy the dependencies.</p>
<p>&#x4F7F;&#x7528;&#x547D;&#x4EE4;&#x8BA1;&#x7B97;&#x5904;&#x6709;&#x9519;&#x8BEF;&#x7684;&#x5305;&#x96C6;&#xFF0C;&#x5C1D;&#x8BD5;&#x5220;&#x9664;&#x4E4B;&#xFF0C;&#x6CE8;&#x610F;&#x6240;&#x6709;&#x5220;&#x9664;&#x7684;&#x7EC6;&#x8282;&#xFF0C;&#x514D;&#x5F97;&#x9020;&#x6210;&#x4E0D;&#x597D;&#x540E;&#x679C;&#x3002;<br>Finally, if all else fails, you can attempt to satisfy the dependencies yourself, either by finding and installing the necessary packages, or by installing them from source and then creating &#x201C;deb&#x201D; packages for them.</p>
</blockquote>
<ul>
<li>&#x5982;&#x679C;&#x6240;&#x6709;&#x7684;&#x90FD;&#x5931;&#x8D25;&#x4E86;&#xFF0C;&#x6CA1;&#x529E;&#x6CD5;&#x4E86;&#xFF0C;&#x624B;&#x52A8;&#x627E;&#x5427;&#x3002;&#x5220;&#x9664;&#x6216;&#x8005;&#x5B89;&#x88C5;</li>
</ul>
<h3 id="&#x5173;&#x4E8E;ppaspersonal-package-archive"><a href="#&#x5173;&#x4E8E;PPAs-Personal-Package-Archive" class="headerlink" title="&#x5173;&#x4E8E;PPAs(Personal Package Archive)"></a>&#x5173;&#x4E8E;PPAs(Personal Package Archive)</h3><ul>
<li>PPAs (Personal Package Archive) are repositories hosted on Launchpad. You can use PPAs to install or upgrade packages that are not available in the official Ubuntu repositories.</li>
<li>One of the most common causes of unmet dependencies are PPAs, specially when used to upgrade the existing package in Ubuntu repositories. To solve the problem you have three options, disable, purge (revert back to original package in Ubuntu repositories) or remove PPA.</li>
</ul>
<h4 id="disable"><a href="#Disable" class="headerlink" title="Disable"></a>Disable</h4><ul>
<li>Disabling a PPA means no more updates for the packages installed from that PPA. To disable a PPA: Open Software Center &gt; Edit &gt; Software Sources Or,</li>
<li>Hit Alt+F2 and run software-properties-gtk.</li>
</ul>
<p>Click on Other Software tab, you&#x2019;ll see that each PPA have two lines here, one for the compiled packages and one for the source, Uncheck both lines to disable a PPA. Here you can also add and remove PPAs.</p>
<h4 id="purge"><a href="#Purge" class="headerlink" title="Purge"></a>Purge</h4><p>Purging a PPA means, downgrading the packages in the selected PPA to the version in the official Ubuntu repositories and disabling that PPA. PPA Purge does exactly that. To install PPA Purge run the following command:</p>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get install ppa-purge</span><br></pre></td></tr></table></figure>
<ul>
<li>But, Considering the question apt is broken so the above command will fail. So use this command</li>
</ul>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">mkdir ppa-purge &amp;&amp; cd ppa-purge &amp;&amp; wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb &amp;&amp; wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb &amp;&amp; sudo dpkg -i ./*.deb</span><br></pre></td></tr></table></figure>
<ul>
<li>To use PPA Purge:</li>
</ul>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo ppa-purge ppa:someppa/ppa</span><br></pre></td></tr></table></figure>
<ul>
<li>If &#x2018;ppa-purge&#x2019; command fails for some reason, you can&#x2019;t run &#x2018;ppa-purge&#x2019; again unless you re-enable the PPA (To enable the PPA follow the same steps as disabling a PPA and Check the both lines of a particular PPA to enable it).</li>
</ul>
<p>Note: PPA Purge doesn&#x2019;t remove PPAs (may be in future), So you&#x2019;ll have to manually remove the PPA.</p>
<h4 id="remove"><a href="#Remove" class="headerlink" title="Remove:"></a>Remove:</h4><ul>
<li>If the package installed from a PPA doesn&#x2019;t exist in official Ubuntu repositories then using PPA Purge is not recommended, because there&#x2019;s nothing to be downgraded and PPA Purge wouldn&#x2019;t delete it either. To remove a PPA and installed packages run the following commands: (Ignore the first command if you don&#x2019;t want to remove the installed packages)</li>
</ul>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get autoremove --purge package-name</span><br><span class="line">sudo add-apt-repository --remove ppa:someppa/ppa</span><br><span class="line">sudo apt-get autoclean</span><br></pre></td></tr></table></figure>
<ul>
<li>Alternatively you can use Y PPA Manager to disable/remove/purge PPA&#x2019;s (Details at the end of answer).</li>
</ul>
<h4 id="preventive-measures"><a href="#Preventive-Measures" class="headerlink" title="Preventive Measures"></a>Preventive Measures</h4><ul>
<li>So how can we avoid this from happening in the first place?</li>
</ul>
<blockquote>
<p>Keep Ubuntu Up to date. Ubuntu automatically notifies when updates are available, you can also check for available updates by clicking on Session Indicator in Unity panel:<br>Or, Hit Alt+Ctrl+T to open terminal and run following commands:</p>
</blockquote>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get update</span><br><span class="line">sudo apt-get upgrade</span><br></pre></td></tr></table></figure>
<blockquote>
<p>Update: Synchronizes your list of available packages with the servers in source repositories. Upgrade: Downloads &amp; installs any newer versions of your installed packages.</p>
</blockquote>
<ul>
<li>&#x5E38;&#x66F4;&#x65B0;&#xFF01;</li>
</ul>
<blockquote>
<p>If you decide to add other repositories to sources.list, make sure that the repository is meant to work (and known to work) with Ubuntu. Repositories that are not designed to work with your version of Ubuntu can introduce inconsistencies in your system and might force you to re-install. Also, make sure that you really need to add external repositories as the software package(s) you are looking for may already have been introduced into the official repositories! </p>
</blockquote>
<ul>
<li>&#x6DFB;&#x52A0;&#x6E90;&#x65F6;&#x5E94;&#x8C28;&#x614E;&#xFF0C;&#x4E00;&#x5B9A;&#x8981;&#x6DFB;&#x52A0;&#x4E48;&#xFF1F;&#x8FD9;&#x4E2A;&#x8F6F;&#x4EF6;&#x9002;&#x5408;&#x5F53;&#x524D;Ubuntu&#x7248;&#x672C;&#x4E48;&#xFF1F;&#x8FD9;&#x4E2A;&#x5916;&#x90E8;&#x6E90;&#x662F;&#x5426;&#x5DF2;&#x7ECF;&#x5B58;&#x5728;&#x4E8E;&#x5B98;&#x65B9;&#x6E90;&#x4E2D;&#x4E86;&#x5462;&#xFF1F;</li>
</ul>
<blockquote>
<p>Remove duplicate PPAs. Y PPA Manager (installation guide at the end of answer) can easily scan and remove duplicate PPAs.<br>Hit Alt+F2 and run y-ppa-manager to open Y PPA Manager.Once open, double click or hit Enter on Advanced.In resulting window select Scan and remove duplicate PPAs and click OK.</p>
</blockquote>
<h3 id="&#x53CC;&#x786C;&#x76D8;&#x540C;&#x5F15;&#x5BFC;&#x53CC;&#x7CFB;&#x7EDF;"><a href="#&#x53CC;&#x786C;&#x76D8;&#x540C;&#x5F15;&#x5BFC;&#x53CC;&#x7CFB;&#x7EDF;" class="headerlink" title="&#x53CC;&#x786C;&#x76D8;&#x540C;&#x5F15;&#x5BFC;&#x53CC;&#x7CFB;&#x7EDF;"></a>&#x53CC;&#x786C;&#x76D8;&#x540C;&#x5F15;&#x5BFC;&#x53CC;&#x7CFB;&#x7EDF;</h3><ul>
<li>&#x5148;&#x8BA4;&#x771F;&#x628A;&#x300A;&#x9E1F;&#x53D4;&#x300B;&#x770B;&#x61C2;&#xFF01;</li>
<li>&#x57FA;&#x672C;&#x6761;&#x4EF6;&#xFF0C;SSD&#xFF08;sd0&#xFF09;&#x88C5;windows&#xFF0C;&#x540C;&#x65F6;HDD&#xFF08;sd1&#xFF09;&#x4F5C;&#x4E3A;&#x6570;&#x636E;&#x76D8;&#xFF1B;&#x8BA1;&#x5212;&#x628A;Ubuntu&#x5B89;&#x88C5;&#x5728;HDD&#x7684;&#x4E00;&#x4E2A;&#x5206;&#x533A;&#x4E2D;&#xFF0C;&#x5206;/swap&#xFF0C;/boot&#xFF0C;/&#xFF0C;/home &#x56DB;&#x4E2A;&#x5206;&#x533A;&#xFF1B;&#x4F46;&#x662F;&#x7B2C;&#x4E00;&#x6B21;&#x5B89;&#x88C5;&#xFF0C;&#x5EFA;&#x8BAE;&#x5C31;&#x5728;HDD&#x4E2D;&#x7684;F&#x76D8;&#xFF0C;&#x4E3B;&#x5206;&#x533A;&#x4E2D;&#x5B89;&#x88C5;&#x5427;&#xFF0C;F&#x76D8;&#x662F;HDD&#x7684;&#x4E00;&#x4E2A;&#x5206;&#x533A;</li>
</ul>
<h3 id="&#x91CD;&#x65B0;&#x5206;&#x533A;&#x7684;&#x95EE;&#x9898;"><a href="#&#x91CD;&#x65B0;&#x5206;&#x533A;&#x7684;&#x95EE;&#x9898;" class="headerlink" title="&#x91CD;&#x65B0;&#x5206;&#x533A;&#x7684;&#x95EE;&#x9898;"></a>&#x91CD;&#x65B0;&#x5206;&#x533A;&#x7684;&#x95EE;&#x9898;</h3><ul>
<li>&#x6062;&#x590D;&#x5206;&#x533A;&#x600E;&#x4E48;&#x5904;&#x7406;&#xFF1F;&#xFF08;&#x6062;&#x590D;&#x5206;&#x533A;&#x662F;&#x4E3B;&#x5206;&#x533A;&#xFF0C;&#x800C;&#x4E14;&#x6709;&#x4E09;&#x4E2A;&#xFF0C;&#x5220;&#x9664;&#x54EA;&#x4E9B;&#xFF1F;&#x8981;&#x5F04;&#x61C2;&#xFF09;</li>
<li>&#x5B89;&#x88C5;Ubuntu&#x8981;&#x4E0D;&#x8981;&#x5206;&#x591A;&#x4E2A;&#x533A;&#xFF1F;&#xFF08;&#x4E0D;&#x6253;&#x7B97;&#x5206;swap&#xFF09;<ul>
<li>/ &#x548C;/home&#x6700;&#x597D;&#x5206;&#x522B;mount&#x5230;ssd&#x548C;hard drive&#x4E0A;&#xFF01;</li>
<li>&#x6253;&#x7B97;&#x8FD9;&#x6837;&#xFF1A;SSD&#x4E0A;/&#x5206;18G&#xFF1B;HDD&#x4E0A;F&#x76D8;100G&#x5206;&#x51FA;&#x4E24;&#x4E2A;&#x5206;&#x533A;&#x7528;&#x6765;&#x88C5;/usr&#x548C;/home</li>
<li>&#x8003;&#x8651;&#x5230;/var&#x4E5F;&#x5F88;&#x8D39;&#x5185;&#x5B58;&#xFF0C;&#x5219;&#x8003;&#x8651;&#x5728;SSD&#x4E0A;&#x53EA;&#x5B89;&#x88C5;/boot&#xFF0C;F&#x76D8;&#x5206;&#x4E24;&#x4E2A;&#x88C5;/&#x548C;/home<blockquote>
<p>&#x8FD9;&#x6837;&#x91CD;&#x88C5;&#x7CFB;&#x7EDF;&#x65F6;&#x5019;&#x53EA;&#x9700;&#x683C;&#x5F0F;&#x5316;/boot&#x548C;/&#x5206;&#x533A;&#xFF0C;&#x7EE7;&#x7EED;&#x6302;&#x8F7D;/home&#x5206;&#x533A;<br>&#x73B0;&#x5728;&#x8FD9;&#x6837;&#xFF0C;&#x5728;SSD&#x4E0A;&#x7684;512M&#x5730;&#x65B9;&#x653E;/boot&#xFF0C;&#x5728;F&#x76D8;&#x7684;&#x6269;&#x5C55;&#x5206;&#x533A;&#x5206;&#x4E24;&#x4E2A;&#x533A;&#xFF0C;bootloader&#x5B89;&#x88C5;&#x5728;SSD&#x4E0A;</p>
</blockquote>
</li>
</ul>
</li>
</ul>
<h3 id="&#x88C5;&#x7CFB;&#x7EDF;&#x5B9E;&#x8DF5;"><a href="#&#x88C5;&#x7CFB;&#x7EDF;&#x5B9E;&#x8DF5;" class="headerlink" title="&#x88C5;&#x7CFB;&#x7EDF;&#x5B9E;&#x8DF5;"></a>&#x88C5;&#x7CFB;&#x7EDF;&#x5B9E;&#x8DF5;</h3><ul>
<li>&#x5907;&#x4EFD;&#x6587;&#x4EF6;&#xFF1B;&#x5236;&#x4F5C;&#x5B89;&#x88C5;U&#x76D8;&#xFF1B;&#x5220;&#x9664;&#x5377;&#xFF1B;&#x68C0;&#x67E5;BIOS&#xFF1B;</li>
<li>&#x5B9E;&#x6D4B;&#xFF1A;&#x5F53;&#x524D;windows&#x8FD8;&#x662F;&#x5728;HDD&#x7684;&#x542F;&#x52A8;&#x6247;&#x533A;&#x8FDB;&#x53BB;&#x7684;&#xFF0C;&#x4E0D;&#x77E5;&#x9053;&#x4E3A;&#x4EC0;&#x4E48;&#xFF0C;&#x6240;&#x4EE5;&#x73B0;&#x5728;&#x7684;&#x65B9;&#x5F0F;&#x662F;&#x5728;F&#x76D8;&#x4E2D;&#x5206;/&#x548C;/home&#xFF0C;bootloader&#x5B89;&#x88C5;&#x5728;HDD&#x4E2D;&#xFF0C;&#x6CE8;&#x610F;&#x5982;&#x679C;&#x6709;&#x9009;&#x62E9;HDD&#x7684;&#x54EA;&#x4E00;&#x4E2A;&#x5206;&#x533A;&#x7684;&#x8BDD;&#xFF0C;&#x9A6C;&#x4E0A;&#x53D6;&#x6D88;&#xFF0C;&#x67E5;&#x7B54;&#x6848;&#x3002;&#xFF08;&#x7ED3;&#x679C;&#x662F;&#xFF0C;&#x65E2;&#x53EF;&#x4EE5;&#x9009;&#x5728;&#x786C;&#x76D8;&#x7684;&#x7B2C;&#x4E00;&#x4E2A;&#x6247;&#x533A;&#xFF0C;&#x4E5F;&#x53EF;&#x4EE5;&#x9009;&#x62E9;&#x786C;&#x76D8;&#x7684;&#x67D0;&#x4E00;&#x4E2A;&#x5206;&#x533A;&#x7684;&#x6247;&#x533A;&#xFF09;</li>
<li>&#x5173;&#x4E8E;device for boot loader installation<ul>
<li>&#x8FD9;&#x4E2A;bootloader &#x5176;&#x5B9E;&#x662F;grub&#xFF0C;&#x5373;&#x9009;&#x62E9;grub&#x7684;&#x5B89;&#x88C5;&#x4F4D;&#x7F6E;</li>
<li>device for boot loader installation&#x7684;&#x9009;&#x62E9;&#xFF08;grub&#x7684;&#x5B89;&#x88C5;&#x4F4D;&#x7F6E;&#xFF09;&#xFF0C;&#x5982;&#x679C;&#x9009;&#x62E9;&#x6574;&#x4E2A;&#x786C;&#x76D8;&#xFF0C;&#x5219;&#x5F00;&#x673A;&#x542F;&#x52A8;&#x65F6;win&#x4F1A;&#x88AB;ubuntu&#x7BA1;&#x7406;&#x542F;&#x52A8;&#xFF08;&#x7528;grub&#x5F15;&#x5BFC; windows&#xFF09;&#xFF0C;&#x8FD9;&#x6837;&#x5378;&#x8F7D;ubuntu&#x540E;&#xFF0C;win&#x4E5F;&#x4F1A;&#x5C06;&#x542F;&#x52A8;&#x4E22;&#x5931;&#xFF0C;&#x5F15;&#x8D77;&#x7CFB;&#x7EDF;&#x8FDB;&#x4E0D;&#x53BB;&#x7684;&#x95EE;&#x9898;&#xFF08;&#x5F53;&#x7136;&#x53EF;&#x4EE5;&#x4FEE;&#x590D;&#xFF09;&#xFF1B;&#x5982;&#x679C;device for boot loader installation&#x9009;&#x62E9;ubuntu&#x7684;/boot&#x6240;&#x5728;&#x7684;&#x5206;&#x533A;&#x540E;&#xFF0C;&#x4E0B;&#x6B21;&#x542F;&#x52A8;&#x4F1A;&#x9ED8;&#x8BA4;&#x8FDB;&#x5165;win&#xFF0C;&#x8FD9;&#x65F6;&#x53EA;&#x8981;&#x5728;win&#x4E0B;&#x7528;freebcd&#x6DFB;&#x52A0;&#x4E2A;ubuntu&#x7684;&#x5F15;&#x5BFC;&#x5C31;&#x884C;&#x4E86;&#x3002;</li>
<li>&#x88C5;&#x5B8C;&#x7CFB;&#x7EDF;&#x540E;&#x8BF7;&#x5173;&#x95ED;windows&#x7684;&#x5FEB;&#x901F;&#x542F;&#x52A8;&#xFF0C;&#x4E0D;&#x7136;&#x5173;&#x673A;&#x540E;&#x518D;&#x6B21;&#x542F;&#x52A8;&#x76F4;&#x63A5;&#x8FDB;Linux&#x65E0;&#x6CD5;&#x6302;&#x8F7D;windows&#x78C1;&#x76D8;&#xFF0C;&#x56E0;&#x4E3A;windows&#x5E76;&#x672A;&#x771F;&#x6B63;&#x5173;&#x95ED;</li>
<li>&#x5F53;&#x7136;&#xFF0C;&#x5982;&#x679C;&#x4E0D;&#x5173;&#x95ED;&#x5FEB;&#x901F;&#x542F;&#x52A8;&#xFF0C;&#x53EF;&#x4EE5;&#x6BCF;&#x6B21;&#x5F00;&#x673A;&#x9ED8;&#x8BA4;&#x8FDB;&#x5165;windows&#xFF0C;&#x7136;&#x540E;&#x60F3;&#x4F7F;&#x7528;Linux&#x65F6;&#x6309;&#x91CD;&#x65B0;&#x542F;&#x52A8;&#x5373;&#x53EF;&#x3002;</li>
<li>&#x8BBE;&#x7F6E;Grub&#xFF0C;&#x914D;&#x7F6E;&#x6587;&#x4EF6;&#xFF0C;&#x8BBE;&#x7F6E;&#x9ED8;&#x8BA4;&#x542F;&#x52A8;&#x9879;&#x548C;&#x7B49;&#x5F85;&#x79D2;&#x6570;</li>
</ul>
</li>
</ul>
<h3 id="&#x7F3A;&#x5C11;&#x5E93;&#x6587;&#x4EF6;"><a href="#&#x7F3A;&#x5C11;&#x5E93;&#x6587;&#x4EF6;" class="headerlink" title="&#x7F3A;&#x5C11;&#x5E93;&#x6587;&#x4EF6;"></a>&#x7F3A;&#x5C11;&#x5E93;&#x6587;&#x4EF6;</h3><ul>
<li>&#x539F;&#x56E0;&#x4E00;&#x822C;&#x6709;&#x4E24;&#x4E2A;, &#x4E00;&#x4E2A;&#x662F;&#x64CD;&#x4F5C;&#x7CFB;&#x7EDF;&#x91CC;&#x786E;&#x5B9E;&#x6CA1;&#x6709;&#x5305;&#x542B;&#x8BE5;&#x5171;&#x4EAB;&#x5E93;(lib<em>.so.</em>&#x6587;&#x4EF6;)&#x6216;&#x8005;&#x5171;&#x4EAB;&#x5E93;&#x7248;&#x672C;&#x4E0D;&#x5BF9;, &#x9047;&#x5230;&#x8FD9;&#x79CD;&#x60C5;&#x51B5;&#x90A3;&#x5C31;&#x53BB;&#x7F51;&#x4E0A;&#x4E0B;&#x8F7D;&#x5E76;&#x5B89;&#x88C5;&#x4E0A;&#x5373;&#x53EF;. </li>
<li>&#x53E6;&#x5916;&#x4E00;&#x4E2A;&#x539F;&#x56E0;&#x5C31;&#x662F;&#x5DF2;&#x7ECF;&#x5B89;&#x88C5;&#x4E86;&#x8BE5;&#x5171;&#x4EAB;&#x5E93;, &#x4F46;&#x6267;&#x884C;&#x9700;&#x8981;&#x8C03;&#x7528;&#x8BE5;&#x5171;&#x4EAB;&#x5E93;&#x7684;&#x7A0B;&#x5E8F;&#x7684;&#x65F6;&#x5019;, &#x7A0B;&#x5E8F;&#x6309;&#x7167;&#x9ED8;&#x8BA4;&#x5171;&#x4EAB;&#x5E93;&#x8DEF;&#x5F84;&#x627E;&#x4E0D;&#x5230;&#x8BE5;&#x5171;&#x4EAB;&#x5E93;&#x6587;&#x4EF6;. </li>
<li>&#x5171;&#x4EAB;&#x5E93;&#x8DEF;&#x5F84;&#x8BBE;&#x7F6E;&#x95EE;&#x9898;, &#x5982;&#x4E0B;:</li>
</ul>
<ol>
<li>&#x5982;&#x679C;&#x5171;&#x4EAB;&#x5E93;&#x6587;&#x4EF6;&#x5B89;&#x88C5;&#x5230;&#x4E86;/lib&#x6216;/usr/lib&#x76EE;&#x5F55;&#x4E0B;, &#x90A3;&#x4E48;&#x9700;&#x6267;&#x884C;&#x4E00;&#x4E0B;ldconfig&#x547D;&#x4EE4;<br>ldconfig&#x547D;&#x4EE4;&#x7684;&#x7528;&#x9014;, &#x4E3B;&#x8981;&#x662F;&#x5728;&#x9ED8;&#x8BA4;&#x641C;&#x5BFB;&#x76EE;&#x5F55;(/lib&#x548C;/usr/lib)&#x4EE5;&#x53CA;&#x52A8;&#x6001;&#x5E93;&#x914D;&#x7F6E;&#x6587;&#x4EF6;/etc/ld.so.conf&#x5185;&#x6240;&#x5217;&#x7684;&#x76EE;&#x5F55;&#x4E0B;, &#x641C;&#x7D22;&#x51FA;&#x53EF;&#x5171;&#x4EAB;&#x7684;&#x52A8;&#x6001;&#x94FE;&#x63A5;&#x5E93;(&#x683C;&#x5F0F;&#x5982;lib<em>.so</em>), &#x8FDB;&#x800C;&#x521B;&#x5EFA;&#x51FA;&#x52A8;&#x6001;&#x88C5;&#x5165;&#x7A0B;&#x5E8F;(ld.so)&#x6240;&#x9700;&#x7684;&#x8FDE;&#x63A5;&#x548C;&#x7F13;&#x5B58;&#x6587;&#x4EF6;. &#x7F13;&#x5B58;&#x6587;&#x4EF6;&#x9ED8;&#x8BA4;&#x4E3A;/etc/ld.so.cache, &#x6B64;&#x6587;&#x4EF6;&#x4FDD;&#x5B58;&#x5DF2;&#x6392;&#x597D;&#x5E8F;&#x7684;&#x52A8;&#x6001;&#x94FE;&#x63A5;&#x5E93;&#x540D;&#x5B57;&#x5217;&#x8868;. </li>
<li>&#x5982;&#x679C;&#x5171;&#x4EAB;&#x5E93;&#x6587;&#x4EF6;&#x5B89;&#x88C5;&#x5230;&#x4E86;/usr/local/lib(&#x5F88;&#x591A;&#x5F00;&#x6E90;&#x7684;&#x5171;&#x4EAB;&#x5E93;&#x90FD;&#x4F1A;&#x5B89;&#x88C5;&#x5230;&#x8BE5;&#x76EE;&#x5F55;&#x4E0B;)&#x6216;&#x5176;&#x5B83;&#x201D;&#x975E;/lib&#x6216;/usr/lib&#x201D;&#x76EE;&#x5F55;&#x4E0B;, &#x90A3;&#x4E48;&#x5728;&#x6267;&#x884C;ldconfig&#x547D;&#x4EE4;&#x524D;, &#x8FD8;&#x8981;&#x628A;&#x65B0;&#x5171;&#x4EAB;&#x5E93;&#x76EE;&#x5F55;&#x52A0;&#x5165;&#x5230;&#x5171;&#x4EAB;&#x5E93;&#x914D;&#x7F6E;&#x6587;&#x4EF6;/etc/ld.so.conf&#x4E2D;, &#x5982;&#x4E0B;:</li>
</ol>
<figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line"># cat /etc/ld.so.conf</span><br><span class="line">include ld.so.conf.d/*.conf</span><br><span class="line"># echo &quot;/usr/local/lib&quot; &gt;&gt; /etc/ld.so.conf</span><br><span class="line"># ldconfig</span><br></pre></td></tr></table></figure>
<ol>
<li>&#x5982;&#x679C;&#x5171;&#x4EAB;&#x5E93;&#x6587;&#x4EF6;&#x5B89;&#x88C5;&#x5230;&#x4E86;&#x5176;&#x5B83;&#x201D;&#x975E;/lib&#x6216;/usr/lib&#x201D; &#x76EE;&#x5F55;&#x4E0B;,  &#x4F46;&#x662F;&#x53C8;&#x4E0D;&#x60F3;&#x5728;/etc/ld.so.conf&#x4E2D;&#x52A0;&#x8DEF;&#x5F84;(&#x6216;&#x8005;&#x662F;&#x6CA1;&#x6709;&#x6743;&#x9650;&#x52A0;&#x8DEF;&#x5F84;). &#x90A3;&#x53EF;&#x4EE5;export&#x4E00;&#x4E2A;&#x5168;&#x5C40;&#x53D8;&#x91CF;LD_LIBRARY_PATH, &#x7136;&#x540E;&#x8FD0;&#x884C;&#x7A0B;&#x5E8F;&#x7684;&#x65F6;&#x5019;&#x5C31;&#x4F1A;&#x53BB;&#x8FD9;&#x4E2A;&#x76EE;&#x5F55;&#x4E2D;&#x627E;&#x5171;&#x4EAB;&#x5E93;. </li>
</ol>
<ul>
<li>LD_LIBRARY_PATH&#x7684;&#x610F;&#x601D;&#x662F;&#x544A;&#x8BC9;loader&#x5728;&#x54EA;&#x4E9B;&#x76EE;&#x5F55;&#x4E2D;&#x53EF;&#x4EE5;&#x627E;&#x5230;&#x5171;&#x4EAB;&#x5E93;. &#x53EF;&#x4EE5;&#x8BBE;&#x7F6E;&#x591A;&#x4E2A;&#x641C;&#x7D22;&#x76EE;&#x5F55;, &#x8FD9;&#x4E9B;&#x76EE;&#x5F55;&#x4E4B;&#x95F4;&#x7528;&#x5192;&#x53F7;&#x5206;&#x9694;&#x5F00;. &#x6BD4;&#x5982;&#x5B89;&#x88C5;&#x4E86;&#x4E00;&#x4E2A;mysql&#x5230;/usr/local/mysql&#x76EE;&#x5F55;&#x4E0B;, &#x5176;&#x4E2D;&#x6709;&#x4E00;&#x5927;&#x5806;&#x5E93;&#x6587;&#x4EF6;&#x5728;/usr/local/mysql/lib&#x4E0B;&#x9762;, &#x5219;&#x53EF;&#x4EE5;&#x5728;.bashrc&#x6216;.bash_profile&#x6216;shell&#x91CC;&#x52A0;&#x5165;&#x4EE5;&#x4E0B;&#x8BED;&#x53E5;&#x5373;&#x53EF;:<br><code>export LD_LIBRARY_PATH=/usr/local/mysql/lib:$LD_LIBRARY_PATH</code><blockquote>
<p>&#x4E00;&#x822C;&#x6765;&#x8BB2;&#x8FD9;&#x53EA;&#x662F;&#x4E00;&#x79CD;&#x4E34;&#x65F6;&#x7684;&#x89E3;&#x51B3;&#x65B9;&#x6848;, &#x5728;&#x6CA1;&#x6709;&#x6743;&#x9650;&#x6216;&#x4E34;&#x65F6;&#x9700;&#x8981;&#x7684;&#x65F6;&#x5019;&#x4F7F;&#x7528;.</p>
</blockquote>
</li>
</ul>

      

      
        <div class="page-reward">
          <a href="javascript:;" class="page-reward-btn tooltip-top">
            <div class="tooltip tooltip-east">
            <span class="tooltip-item">
              赏
            </span>
            <span class="tooltip-content">
              <span class="tooltip-text">
                <span class="tooltip-inner">
                  <p class="reward-p"><i class="icon icon-quo-left"></i>谢谢你请我吃糖果<i class="icon icon-quo-right"></i></p>
                  <div class="reward-box">
                    
                    <div class="reward-box-item">
                      <img class="reward-img" src="http://7xvunf.com1.z0.glb.clouddn.com/alipay.jpg">
                      <span class="reward-type">支付宝</span>
                    </div>
                    
                    
                    <div class="reward-box-item">
                      <img class="reward-img" src="http://7xvunf.com1.z0.glb.clouddn.com/wechatpay.jpg">
                      <span class="reward-type">微信</span>
                    </div>
                    
                  </div>
                </span>
              </span>
            </span>
          </div>
          </a>
        </div>
      
    </div>
    <div class="article-info article-info-index">
      
      
	<div class="article-tag tagcloud">
		<i class="icon-price-tags"></i>
		<ul class="article-tag-list">
			 
        <li class="article-tag-list-item">
        	<a href="javascript:void(0)" class="article-tag-list-link color3">其他</a>
        </li>
       
        <li class="article-tag-list-item">
        	<a href="javascript:void(0)" class="article-tag-list-link color2">Ubuntu</a>
        </li>
      
		</ul>
	</div>

      

      

      
        
<div class="share-btn share-icons tooltip-left">
  <div class="tooltip tooltip-east">
    <span class="tooltip-item">
      <a href="javascript:;" class="share-sns share-outer">
        <i class="icon icon-share"></i>
      </a>
    </span>
    <span class="tooltip-content">
      <div class="share-wrap">
        <div class="share-icons">
          <a class="weibo share-sns" href="javascript:;" data-type="weibo">
            <i class="icon icon-weibo"></i>
          </a>
          <a class="weixin share-sns wxFab" href="javascript:;" data-type="weixin">
            <i class="icon icon-weixin"></i>
          </a>
          <a class="qq share-sns" href="javascript:;" data-type="qq">
            <i class="icon icon-qq"></i>
          </a>
          <a class="douban share-sns" href="javascript:;" data-type="douban">
            <i class="icon icon-douban"></i>
          </a>
          <a class="qzone share-sns" href="javascript:;" data-type="qzone">
            <i class="icon icon-qzone"></i>
          </a>
          <a class="facebook share-sns" href="javascript:;" data-type="facebook">
            <i class="icon icon-facebook"></i>
          </a>
          <a class="twitter share-sns" href="javascript:;" data-type="twitter">
            <i class="icon icon-twitter"></i>
          </a>
          <a class="google share-sns" href="javascript:;" data-type="google">
            <i class="icon icon-google"></i>
          </a>
        </div>
      </div>
    </span>
  </div>
</div>

<div class="page-modal wx-share js-wx-box">
    <a class="close js-modal-close" href="javascript:;"><i class="icon icon-close"></i></a>
    <p>扫一扫，分享到微信</p>
    <div class="wx-qrcode">
      <img src="http://s.jiathis.com/qrcode.php?url=https://ZhenshengLee.github.io/2017/01/02/160716-常用系统维护/" alt="微信分享二维码">
    </div>
</div>

<div class="mask js-mask"></div>
      
      <div class="clearfix"></div>
    </div>
  </div>
</article>

  
<nav id="article-nav">
  
    <a href="/2017/01/02/170102-科研环境搭建/" id="article-nav-newer" class="article-nav-link-wrap">
      <i class="icon-circle-left"></i>
      <div class="article-nav-title">
        
          科研环境搭建
        
      </div>
    </a>
  
  
    <a href="/2017/01/02/160619-开开心心建网站/" id="article-nav-older" class="article-nav-link-wrap">
      <div class="article-nav-title">开开心心建网站</div>
      <i class="icon-circle-right"></i>
    </a>
  
</nav>






  
  <div class="duoshuo">
	<!-- 多说评论框 start -->
	<div class="ds-thread" data-thread-key="160716-常用系统维护" data-title="常用系统维护" data-url="https://ZhenshengLee.github.io/2017/01/02/160716-常用系统维护/"></div>
	<!-- 多说评论框 end -->
	<!-- 多说公共JS代码 start (一个网页只需插入一次) -->
	<script type="text/javascript">
	var duoshuoQuery = {short_name:"true"};
	(function() {
		var ds = document.createElement('script');
		ds.type = 'text/javascript';ds.async = true;
		ds.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + '//static.duoshuo.com/embed.js';
		ds.charset = 'UTF-8';
		(document.getElementsByTagName('head')[0] 
		 || document.getElementsByTagName('body')[0]).appendChild(ds);
	})();
	</script>
	<!-- 多说公共JS代码 end -->
</div>

  




          </div>
        </div>
      </div>
      <footer id="footer">
  <div class="outer">
    <div id="footer-info">
    	<div class="footer-left">
    		&copy; 2017 黎振胜
    	</div>
      	<div class="footer-right">
      		<a href="http://hexo.io/" target="_blank">Hexo</a>  Theme <a href="https://github.com/litten/hexo-theme-yilia" target="_blank">Yilia</a> by Litten
      	</div>
    </div>
  </div>
</footer>
    </div>
    <script>
	var yiliaConfig = {
		mathjax: true,
		isHome: false,
		isPost: true,
		isArchive: false,
		isTag: false,
		isCategory: false,
		open_in_new: false,
		root: "/",
		innerArchive: true,
		showTags: false
	}
</script>

<script>
!function(t){function n(r){if(e[r])return e[r].exports;var o=e[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}var e={};return n.m=t,n.c=e,n.p="/",n(0)}([function(t,n,e){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,n){var e=/\/|index.html/g;return t.replace(e,"")===n.replace(e,"")}function i(){for(var t=document.querySelectorAll(".js-header-menu li a"),n=window.location.pathname,e=0,r=t.length;e<r;e++){var i=t[e];o(n,i.getAttribute("href"))&&(0,d.default)(i,"active")}}function u(t){for(var n=t.offsetLeft,e=t.offsetParent;null!==e;)n+=e.offsetLeft,e=e.offsetParent;return n}function f(t){for(var n=t.offsetTop,e=t.offsetParent;null!==e;)n+=e.offsetTop,e=e.offsetParent;return n}function c(t,n,e,r,o){var i=u(t),c=f(t)-n;if(c-e<=o){var a=t.$newDom;a||(a=t.cloneNode(!0),(0,h.default)(t,a),t.$newDom=a,a.style.position="fixed",a.style.top=(e||c)+"px",a.style.left=i+"px",a.style.zIndex=r||2,a.style.width="100%",a.style.color="#fff"),a.style.visibility="visible",t.style.visibility="hidden"}else{t.style.visibility="visible";var s=t.$newDom;s&&(s.style.visibility="hidden")}}function a(){var t=document.querySelector(".js-overlay"),n=document.querySelector(".js-header-menu");c(t,document.body.scrollTop,-63,2,0),c(n,document.body.scrollTop,1,3,0)}function s(){document.querySelector("#container").addEventListener("scroll",function(t){a()}),window.addEventListener("scroll",function(t){a()}),a()}function l(){x.default.versions.mobile&&window.screen.width<800&&(i(),s())}var p=e(71),d=r(p),v=e(72),y=(r(v),e(84)),h=r(y),b=e(69),x=r(b),m=e(75),g=r(m),w=e(70);l(),(0,w.addLoadEvent)(function(){g.default.init()}),t.exports={}},function(t,n){var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},function(t,n){var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},function(t,n,e){var r=e(49),o=e(15);t.exports=function(t){return r(o(t))}},function(t,n,e){t.exports=!e(8)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,n,e){var r=e(6),o=e(12);t.exports=e(4)?function(t,n,e){return r.f(t,n,o(1,e))}:function(t,n,e){return t[n]=e,t}},function(t,n,e){var r=e(10),o=e(30),i=e(24),u=Object.defineProperty;n.f=e(4)?Object.defineProperty:function(t,n,e){if(r(t),n=i(n,!0),r(e),o)try{return u(t,n,e)}catch(t){}if("get"in e||"set"in e)throw TypeError("Accessors not supported!");return"value"in e&&(t[n]=e.value),t}},function(t,n,e){var r=e(22)("wks"),o=e(13),i=e(1).Symbol,u="function"==typeof i,f=t.exports=function(t){return r[t]||(r[t]=u&&i[t]||(u?i:o)("Symbol."+t))};f.store=r},function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,n,e){var r=e(35),o=e(16);t.exports=Object.keys||function(t){return r(t,o)}},function(t,n,e){var r=e(11);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n){var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},function(t,n){var e=t.exports={version:"2.4.0"};"number"==typeof __e&&(__e=e)},function(t,n){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on  "+t);return t}},function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,n){t.exports={}},function(t,n){t.exports=!0},function(t,n){n.f={}.propertyIsEnumerable},function(t,n,e){var r=e(6).f,o=e(2),i=e(7)("toStringTag");t.exports=function(t,n,e){t&&!o(t=e?t:t.prototype,i)&&r(t,i,{configurable:!0,value:n})}},function(t,n,e){var r=e(22)("keys"),o=e(13);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,n,e){var r=e(1),o="__core-js_shared__",i=r[o]||(r[o]={});t.exports=function(t){return i[t]||(i[t]={})}},function(t,n){var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},function(t,n,e){var r=e(11);t.exports=function(t,n){if(!r(t))return t;var e,o;if(n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;if("function"==typeof(e=t.valueOf)&&!r(o=e.call(t)))return o;if(!n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,n,e){var r=e(1),o=e(14),i=e(18),u=e(26),f=e(6).f;t.exports=function(t){var n=o.Symbol||(o.Symbol=i?{}:r.Symbol||{});"_"==t.charAt(0)||t in n||f(n,t,{value:u.f(t)})}},function(t,n,e){n.f=e(7)},function(t,n,e){var r=e(1),o=e(14),i=e(46),u=e(5),f="prototype",c=function(t,n,e){var a,s,l,p=t&c.F,d=t&c.G,v=t&c.S,y=t&c.P,h=t&c.B,b=t&c.W,x=d?o:o[n]||(o[n]={}),m=x[f],g=d?r:v?r[n]:(r[n]||{})[f];d&&(e=n);for(a in e)s=!p&&g&&void 0!==g[a],s&&a in x||(l=s?g[a]:e[a],x[a]=d&&"function"!=typeof g[a]?e[a]:h&&s?i(l,r):b&&g[a]==l?function(t){var n=function(n,e,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(n);case 2:return new t(n,e)}return new t(n,e,r)}return t.apply(this,arguments)};return n[f]=t[f],n}(l):y&&"function"==typeof l?i(Function.call,l):l,y&&((x.virtual||(x.virtual={}))[a]=l,t&c.R&&m&&!m[a]&&u(m,a,l)))};c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c},function(t,n){var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},function(t,n,e){var r=e(11),o=e(1).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,n,e){t.exports=!e(4)&&!e(8)(function(){return 7!=Object.defineProperty(e(29)("div"),"a",{get:function(){return 7}}).a})},function(t,n,e){"use strict";var r=e(18),o=e(27),i=e(36),u=e(5),f=e(2),c=e(17),a=e(51),s=e(20),l=e(58),p=e(7)("iterator"),d=!([].keys&&"next"in[].keys()),v="@@iterator",y="keys",h="values",b=function(){return this};t.exports=function(t,n,e,x,m,g,w){a(e,n,x);var O,S,_,j=function(t){if(!d&&t in A)return A[t];switch(t){case y:return function(){return new e(this,t)};case h:return function(){return new e(this,t)}}return function(){return new e(this,t)}},P=n+" Iterator",E=m==h,M=!1,A=t.prototype,T=A[p]||A[v]||m&&A[m],L=T||j(m),N=m?E?j("entries"):L:void 0,C="Array"==n?A.entries||T:T;if(C&&(_=l(C.call(new t)),_!==Object.prototype&&(s(_,P,!0),r||f(_,p)||u(_,p,b))),E&&T&&T.name!==h&&(M=!0,L=function(){return T.call(this)}),r&&!w||!d&&!M&&A[p]||u(A,p,L),c[n]=L,c[P]=b,m)if(O={values:E?L:j(h),keys:g?L:j(y),entries:N},w)for(S in O)S in A||i(A,S,O[S]);else o(o.P+o.F*(d||M),n,O);return O}},function(t,n,e){var r=e(10),o=e(55),i=e(16),u=e(21)("IE_PROTO"),f=function(){},c="prototype",a=function(){var t,n=e(29)("iframe"),r=i.length,o="<",u=">";for(n.style.display="none",e(48).appendChild(n),n.src="javascript:",t=n.contentWindow.document,t.open(),t.write(o+"script"+u+"document.F=Object"+o+"/script"+u),t.close(),a=t.F;r--;)delete a[c][i[r]];return a()};t.exports=Object.create||function(t,n){var e;return null!==t?(f[c]=r(t),e=new f,f[c]=null,e[u]=t):e=a(),void 0===n?e:o(e,n)}},function(t,n,e){var r=e(35),o=e(16).concat("length","prototype");n.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},function(t,n){n.f=Object.getOwnPropertySymbols},function(t,n,e){var r=e(2),o=e(3),i=e(45)(!1),u=e(21)("IE_PROTO");t.exports=function(t,n){var e,f=o(t),c=0,a=[];for(e in f)e!=u&&r(f,e)&&a.push(e);for(;n.length>c;)r(f,e=n[c++])&&(~i(a,e)||a.push(e));return a}},function(t,n,e){t.exports=e(5)},function(t,n,e){var r=e(15);t.exports=function(t){return Object(r(t))}},function(t,n,e){t.exports={default:e(41),__esModule:!0}},function(t,n,e){t.exports={default:e(42),__esModule:!0}},function(t,n,e){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}n.__esModule=!0;var o=e(39),i=r(o),u=e(38),f=r(u),c="function"==typeof f.default&&"symbol"==typeof i.default?function(t){return typeof t}:function(t){return t&&"function"==typeof f.default&&t.constructor===f.default&&t!==f.default.prototype?"symbol":typeof t};n.default="function"==typeof f.default&&"symbol"===c(i.default)?function(t){return"undefined"==typeof t?"undefined":c(t)}:function(t){return t&&"function"==typeof f.default&&t.constructor===f.default&&t!==f.default.prototype?"symbol":"undefined"==typeof t?"undefined":c(t)}},function(t,n,e){e(65),e(63),e(66),e(67),t.exports=e(14).Symbol},function(t,n,e){e(64),e(68),t.exports=e(26).f("iterator")},function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,n){t.exports=function(){}},function(t,n,e){var r=e(3),o=e(61),i=e(60);t.exports=function(t){return function(n,e,u){var f,c=r(n),a=o(c.length),s=i(u,a);if(t&&e!=e){for(;a>s;)if(f=c[s++],f!=f)return!0}else for(;a>s;s++)if((t||s in c)&&c[s]===e)return t||s||0;return!t&&-1}}},function(t,n,e){var r=e(43);t.exports=function(t,n,e){if(r(t),void 0===n)return t;switch(e){case 1:return function(e){return t.call(n,e)};case 2:return function(e,r){return t.call(n,e,r)};case 3:return function(e,r,o){return t.call(n,e,r,o)}}return function(){return t.apply(n,arguments)}}},function(t,n,e){var r=e(9),o=e(34),i=e(19);t.exports=function(t){var n=r(t),e=o.f;if(e)for(var u,f=e(t),c=i.f,a=0;f.length>a;)c.call(t,u=f[a++])&&n.push(u);return n}},function(t,n,e){t.exports=e(1).document&&document.documentElement},function(t,n,e){var r=e(28);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},function(t,n,e){var r=e(28);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,n,e){"use strict";var r=e(32),o=e(12),i=e(20),u={};e(5)(u,e(7)("iterator"),function(){return this}),t.exports=function(t,n,e){t.prototype=r(u,{next:o(1,e)}),i(t,n+" Iterator")}},function(t,n){t.exports=function(t,n){return{value:n,done:!!t}}},function(t,n,e){var r=e(9),o=e(3);t.exports=function(t,n){for(var e,i=o(t),u=r(i),f=u.length,c=0;f>c;)if(i[e=u[c++]]===n)return e}},function(t,n,e){var r=e(13)("meta"),o=e(11),i=e(2),u=e(6).f,f=0,c=Object.isExtensible||function(){return!0},a=!e(8)(function(){return c(Object.preventExtensions({}))}),s=function(t){u(t,r,{value:{i:"O"+ ++f,w:{}}})},l=function(t,n){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,r)){if(!c(t))return"F";if(!n)return"E";s(t)}return t[r].i},p=function(t,n){if(!i(t,r)){if(!c(t))return!0;if(!n)return!1;s(t)}return t[r].w},d=function(t){return a&&v.NEED&&c(t)&&!i(t,r)&&s(t),t},v=t.exports={KEY:r,NEED:!1,fastKey:l,getWeak:p,onFreeze:d}},function(t,n,e){var r=e(6),o=e(10),i=e(9);t.exports=e(4)?Object.defineProperties:function(t,n){o(t);for(var e,u=i(n),f=u.length,c=0;f>c;)r.f(t,e=u[c++],n[e]);return t}},function(t,n,e){var r=e(19),o=e(12),i=e(3),u=e(24),f=e(2),c=e(30),a=Object.getOwnPropertyDescriptor;n.f=e(4)?a:function(t,n){if(t=i(t),n=u(n,!0),c)try{return a(t,n)}catch(t){}if(f(t,n))return o(!r.f.call(t,n),t[n])}},function(t,n,e){var r=e(3),o=e(33).f,i={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],f=function(t){try{return o(t)}catch(t){return u.slice()}};t.exports.f=function(t){return u&&"[object Window]"==i.call(t)?f(t):o(r(t))}},function(t,n,e){var r=e(2),o=e(37),i=e(21)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},function(t,n,e){var r=e(23),o=e(15);t.exports=function(t){return function(n,e){var i,u,f=String(o(n)),c=r(e),a=f.length;return c<0||c>=a?t?"":void 0:(i=f.charCodeAt(c),i<55296||i>56319||c+1===a||(u=f.charCodeAt(c+1))<56320||u>57343?t?f.charAt(c):i:t?f.slice(c,c+2):(i-55296<<10)+(u-56320)+65536)}}},function(t,n,e){var r=e(23),o=Math.max,i=Math.min;t.exports=function(t,n){return t=r(t),t<0?o(t+n,0):i(t,n)}},function(t,n,e){var r=e(23),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,n,e){"use strict";var r=e(44),o=e(52),i=e(17),u=e(3);t.exports=e(31)(Array,"Array",function(t,n){this._t=u(t),this._i=0,this._k=n},function(){var t=this._t,n=this._k,e=this._i++;return!t||e>=t.length?(this._t=void 0,o(1)):"keys"==n?o(0,e):"values"==n?o(0,t[e]):o(0,[e,t[e]])},"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},function(t,n){},function(t,n,e){"use strict";var r=e(59)(!0);e(31)(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,n=this._t,e=this._i;return e>=n.length?{value:void 0,done:!0}:(t=r(n,e),this._i+=t.length,{value:t,done:!1})})},function(t,n,e){"use strict";var r=e(1),o=e(2),i=e(4),u=e(27),f=e(36),c=e(54).KEY,a=e(8),s=e(22),l=e(20),p=e(13),d=e(7),v=e(26),y=e(25),h=e(53),b=e(47),x=e(50),m=e(10),g=e(3),w=e(24),O=e(12),S=e(32),_=e(57),j=e(56),P=e(6),E=e(9),M=j.f,A=P.f,T=_.f,L=r.Symbol,N=r.JSON,C=N&&N.stringify,k="prototype",F=d("_hidden"),q=d("toPrimitive"),I={}.propertyIsEnumerable,B=s("symbol-registry"),D=s("symbols"),W=s("op-symbols"),H=Object[k],K="function"==typeof L,R=r.QObject,J=!R||!R[k]||!R[k].findChild,U=i&&a(function(){return 7!=S(A({},"a",{get:function(){return A(this,"a",{value:7}).a}})).a})?function(t,n,e){var r=M(H,n);r&&delete H[n],A(t,n,e),r&&t!==H&&A(H,n,r)}:A,G=function(t){var n=D[t]=S(L[k]);return n._k=t,n},$=K&&"symbol"==typeof L.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof L},z=function(t,n,e){return t===H&&z(W,n,e),m(t),n=w(n,!0),m(e),o(D,n)?(e.enumerable?(o(t,F)&&t[F][n]&&(t[F][n]=!1),e=S(e,{enumerable:O(0,!1)})):(o(t,F)||A(t,F,O(1,{})),t[F][n]=!0),U(t,n,e)):A(t,n,e)},Y=function(t,n){m(t);for(var e,r=b(n=g(n)),o=0,i=r.length;i>o;)z(t,e=r[o++],n[e]);return t},Q=function(t,n){return void 0===n?S(t):Y(S(t),n)},X=function(t){var n=I.call(this,t=w(t,!0));return!(this===H&&o(D,t)&&!o(W,t))&&(!(n||!o(this,t)||!o(D,t)||o(this,F)&&this[F][t])||n)},V=function(t,n){if(t=g(t),n=w(n,!0),t!==H||!o(D,n)||o(W,n)){var e=M(t,n);return!e||!o(D,n)||o(t,F)&&t[F][n]||(e.enumerable=!0),e}},Z=function(t){for(var n,e=T(g(t)),r=[],i=0;e.length>i;)o(D,n=e[i++])||n==F||n==c||r.push(n);return r},tt=function(t){for(var n,e=t===H,r=T(e?W:g(t)),i=[],u=0;r.length>u;)!o(D,n=r[u++])||e&&!o(H,n)||i.push(D[n]);return i};K||(L=function(){if(this instanceof L)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),n=function(e){this===H&&n.call(W,e),o(this,F)&&o(this[F],t)&&(this[F][t]=!1),U(this,t,O(1,e))};return i&&J&&U(H,t,{configurable:!0,set:n}),G(t)},f(L[k],"toString",function(){return this._k}),j.f=V,P.f=z,e(33).f=_.f=Z,e(19).f=X,e(34).f=tt,i&&!e(18)&&f(H,"propertyIsEnumerable",X,!0),v.f=function(t){return G(d(t))}),u(u.G+u.W+u.F*!K,{Symbol:L});for(var nt="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),et=0;nt.length>et;)d(nt[et++]);for(var nt=E(d.store),et=0;nt.length>et;)y(nt[et++]);u(u.S+u.F*!K,"Symbol",{for:function(t){return o(B,t+="")?B[t]:B[t]=L(t)},keyFor:function(t){if($(t))return h(B,t);throw TypeError(t+" is not a symbol!")},useSetter:function(){J=!0},useSimple:function(){J=!1}}),u(u.S+u.F*!K,"Object",{create:Q,defineProperty:z,defineProperties:Y,getOwnPropertyDescriptor:V,getOwnPropertyNames:Z,getOwnPropertySymbols:tt}),N&&u(u.S+u.F*(!K||a(function(){var t=L();return"[null]"!=C([t])||"{}"!=C({a:t})||"{}"!=C(Object(t))})),"JSON",{stringify:function(t){if(void 0!==t&&!$(t)){for(var n,e,r=[t],o=1;arguments.length>o;)r.push(arguments[o++]);return n=r[1],"function"==typeof n&&(e=n),!e&&x(n)||(n=function(t,n){if(e&&(n=e.call(this,t,n)),!$(n))return n}),r[1]=n,C.apply(N,r)}}}),L[k][q]||e(5)(L[k],q,L[k].valueOf),l(L,"Symbol"),l(Math,"Math",!0),l(r.JSON,"JSON",!0)},function(t,n,e){e(25)("asyncIterator")},function(t,n,e){e(25)("observable")},function(t,n,e){e(62);for(var r=e(1),o=e(5),i=e(17),u=e(7)("toStringTag"),f=["NodeList","DOMTokenList","MediaList","StyleSheetList","CSSRuleList"],c=0;c<5;c++){var a=f[c],s=r[a],l=s&&s.prototype;l&&!l[u]&&o(l,u,a),i[a]=i.Array}},function(t,n){"use strict";var e={versions:function(){var t=window.navigator.userAgent;return{trident:t.indexOf("Trident")>-1,presto:t.indexOf("Presto")>-1,webKit:t.indexOf("AppleWebKit")>-1,gecko:t.indexOf("Gecko")>-1&&t.indexOf("KHTML")==-1,mobile:!!t.match(/AppleWebKit.*Mobile.*/),ios:!!t.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),android:t.indexOf("Android")>-1||t.indexOf("Linux")>-1,iPhone:t.indexOf("iPhone")>-1||t.indexOf("Mac")>-1,iPad:t.indexOf("iPad")>-1,webApp:t.indexOf("Safari")==-1,weixin:t.indexOf("MicroMessenger")==-1}}()};t.exports=e},function(t,n,e){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}var o=e(40),i=r(o),u=function(){function t(t,n,e){return n||e?String.fromCharCode(n||e):o[t]||t}function n(t){return l[t]}var e=/&quot;|&lt;|&gt;|&amp;|&nbsp;|&apos;|&#(\d+);|&#(\d+)/g,r=/['<> "&]/g,o={"&quot;":'"',"&lt;":"<","&gt;":">","&amp;":"&","&nbsp;":" "},f=/\u00a0/g,c=/<br\s*\/?>/gi,a=/\r?\n/g,s=/\s/g,l={};for(var p in o)l[o[p]]=p;return o["&apos;"]="'",l["'"]="&#39;",{encode:function(t){return t?(""+t).replace(r,n).replace(a,"<br/>").replace(s,"&nbsp;"):""},decode:function(n){return n?(""+n).replace(c,"\n").replace(e,t).replace(f," "):""},encodeBase16:function(t){if(!t)return t;t+="";for(var n=[],e=0,r=t.length;r>e;e++)n.push(t.charCodeAt(e).toString(16).toUpperCase());return n.join("")},encodeBase16forJSON:function(t){if(!t)return t;t=t.replace(/[\u4E00-\u9FBF]/gi,function(t){return escape(t).replace("%u","\\u")});for(var n=[],e=0,r=t.length;r>e;e++)n.push(t.charCodeAt(e).toString(16).toUpperCase());return n.join("")},decodeBase16:function(t){if(!t)return t;t+="";for(var n=[],e=0,r=t.length;r>e;e+=2)n.push(String.fromCharCode("0x"+t.slice(e,e+2)));return n.join("")},encodeObject:function(t){if(t instanceof Array)for(var n=0,e=t.length;e>n;n++)t[n]=u.encodeObject(t[n]);else if("object"==("undefined"==typeof t?"undefined":(0,i.default)(t)))for(var r in t)t[r]=u.encodeObject(t[r]);else if("string"==typeof t)return u.encode(t);return t},loadScript:function(t){var n=document.createElement("script");document.getElementsByTagName("body")[0].appendChild(n),n.setAttribute("src",t)},addLoadEvent:function(t){var n=window.onload;"function"!=typeof window.onload?window.onload=t:window.onload=function(){n(),t()}}}}();t.exports=u},function(t,n){function e(t,n){t.classList?t.classList.add(n):t.className+=" "+n}t.exports=e},function(t,n){function e(t,n){if(t.classList)t.classList.remove(n);else{var e=new RegExp("(^|\\b)"+n.split(" ").join("|")+"(\\b|$)","gi");t.className=t.className.replace(e," ")}}t.exports=e},,,function(t,n){"use strict";function e(){var t=document.querySelector("#page-nav");if(t&&!document.querySelector("#page-nav .extend.prev")&&(t.innerHTML='<a class="extend prev disabled" rel="prev">&laquo; Prev</a>'+t.innerHTML),t&&!document.querySelector("#page-nav .extend.next")&&(t.innerHTML=t.innerHTML+'<a class="extend next disabled" rel="next">Next &raquo;</a>'),yiliaConfig&&yiliaConfig.open_in_new){var n=document.querySelectorAll(".article-entry a:not(.article-more-a)");n.forEach(function(t){t.setAttribute("target","_blank")})}var e=document.querySelector("#js-aboutme");e&&0!==e.length&&(e.innerHTML=e.innerText)}t.exports={init:e}},,,,,,,,,function(t,n){function e(t,n){if("string"==typeof n)return t.insertAdjacentHTML("afterend",n);var e=t.nextSibling;return e?t.parentNode.insertBefore(n,e):t.parentNode.appendChild(n)}t.exports=e}]);
</script>
<script src="/main.68ab53.js"></script>
<script>
(function() {
	var loadScript = function(path) {
	    var $script = document.createElement('script')
	    document.getElementsByTagName('body')[0].appendChild($script)
	    $script.setAttribute('src', path)
	}
	loadScript("/slider.fa3fc2.js")
})();
</script>




<script type="text/x-mathjax-config">
MathJax.Hub.Config({
    tex2jax: {
        inlineMath: [ ['$','$'], ["\\(","\\)"]  ],
        processEscapes: true,
        skipTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code']
    }
});

MathJax.Hub.Queue(function() {
    var all = MathJax.Hub.getAllJax(), i;
    for(i=0; i < all.length; i += 1) {
        all[i].SourceElement().parentNode.className += ' has-jax';                 
    }       
});
</script>

<script src="//cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>


    
<div class="tools-col" q-class="show:isShow,hide:isShow|isFalse" q-on="click:stop(e)">
  <div class="tools-nav header-menu">
    
    
      
      
      
    
      
    
      
      
      
    
    

    <ul style="width: 70%">
    
    
      
      <li style="width: 50%" q-on="click: openSlider(e, 'innerArchive')"><a href="javascript:void(0)" q-class="active:innerArchive">所有文章</a></li>
      
        
      
        
      
      <li style="width: 50%" q-on="click: openSlider(e, 'aboutme')"><a href="javascript:void(0)" q-class="active:aboutme">关于我</a></li>
      
        
    </ul>
  </div>
  <div class="tools-wrap">
    
    	<section class="tools-section tools-section-all" q-show="innerArchive">
        <div class="search-wrap">
          <input class="search-ipt" q-model="search" type="text" placeholder="find something…">
          <i class="icon-search icon" q-show="search|isEmptyStr"></i>
          <i class="icon-close icon" q-show="search|isNotEmptyStr" q-on="click:clearChose(e)"></i>
        </div>
        <div class="widget tagcloud search-tag">
          <p class="search-tag-wording">tag:</p>
          <label class="search-switch">
            <input type="checkbox" q-on="click:toggleTag(e)" q-attr="checked:showTags">
          </label>
          <ul class="article-tag-list" q-show="showTags">
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">机器人软件构造</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color4">机器人</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">部署</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color4">git</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">其他</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">建站</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color2">Ubuntu</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">机器人软件设计</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">论文</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color4">ROS</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">编译</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">调试</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">机器人系统开发</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color4">编辑器</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">组件</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color5">ompl</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color5">深度学习</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color1">caffe</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color4">卷首语</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color3">整机</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color2">库</a>
              </li>
             
              <li class="article-tag-list-item">
                <a href="javascript:void(0)" class="color5">建模文档</a>
              </li>
            
            <div class="clearfix"></div>
          </ul>
        </div>
        <ul class="search-ul">
          <p q-show="jsonFail" style="padding: 20px; font-size: 12px;">
            缺失模块。<br/>1、在博客根目录（注意不是yilia根目录）执行以下命令：<br/> npm i hexo-generator-json-content --save<br/><br/>
            2、在根目录_config.yml里添加配置：
<pre style="font-size: 12px;" q-show="jsonFail">
  jsonContent:
    meta: false
    pages: false
    posts:
      title: true
      date: true
      path: true
      text: true
      raw: false
      content: false
      slug: false
      updated: false
      comments: false
      link: false
      permalink: false
      excerpt: false
      categories: false
      tags: true
</pre>
          </p>
          <li class="search-li" q-repeat="items" q-show="isShow">
            <a q-attr="href:path|urlformat" class="search-title"><i class="icon-quo-left icon"></i><span q-text="title"></span></a>
            <p class="search-time">
              <i class="icon-calendar icon"></i>
              <span q-text="date|dateformat"></span>
            </p>
            <p class="search-tag">
              <i class="icon-price-tags icon"></i>
              <span q-repeat="tags" q-on="click:choseTag(e, name)" q-text="name|tagformat"></span>
            </p>
          </li>
        </ul>
    	</section>
    

    

    
    	<section class="tools-section tools-section-me" q-show="aboutme">
  	  	
  	  		<div class="aboutme-wrap" id="js-aboutme">本科学机械，硕士程序员，读书在中南，工作在中兴。</div>
  	  	
    	</section>
    
  </div>
  
</div>
    <!-- Root element of PhotoSwipe. Must have class pswp. -->
<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">

    <!-- Background of PhotoSwipe. 
         It's a separate element as animating opacity is faster than rgba(). -->
    <div class="pswp__bg"></div>

    <!-- Slides wrapper with overflow:hidden. -->
    <div class="pswp__scroll-wrap">

        <!-- Container that holds slides. 
            PhotoSwipe keeps only 3 of them in the DOM to save memory.
            Don't modify these 3 pswp__item elements, data is added later on. -->
        <div class="pswp__container">
            <div class="pswp__item"></div>
            <div class="pswp__item"></div>
            <div class="pswp__item"></div>
        </div>

        <!-- Default (PhotoSwipeUI_Default) interface on top of sliding area. Can be changed. -->
        <div class="pswp__ui pswp__ui--hidden">

            <div class="pswp__top-bar">

                <!--  Controls are self-explanatory. Order can be changed. -->

                <div class="pswp__counter"></div>

                <button class="pswp__button pswp__button--close" title="Close (Esc)"></button>

                <button class="pswp__button pswp__button--share" style="display:none" title="Share"></button>

                <button class="pswp__button pswp__button--fs" title="Toggle fullscreen"></button>

                <button class="pswp__button pswp__button--zoom" title="Zoom in/out"></button>

                <!-- Preloader demo http://codepen.io/dimsemenov/pen/yyBWoR -->
                <!-- element will get class pswp__preloader--active when preloader is running -->
                <div class="pswp__preloader">
                    <div class="pswp__preloader__icn">
                      <div class="pswp__preloader__cut">
                        <div class="pswp__preloader__donut"></div>
                      </div>
                    </div>
                </div>
            </div>

            <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap">
                <div class="pswp__share-tooltip"></div> 
            </div>

            <button class="pswp__button pswp__button--arrow--left" title="Previous (arrow left)">
            </button>

            <button class="pswp__button pswp__button--arrow--right" title="Next (arrow right)">
            </button>

            <div class="pswp__caption">
                <div class="pswp__caption__center"></div>
            </div>

        </div>

    </div>

</div>
  </div>
</body>
</html>